package com.mercury.ec.module.air.dal.dataobject.demandorder;

import lombok.*;

import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.*;
import com.mercury.ec.framework.mybatis.core.dataobject.BaseDO;

/**
 * 机票需求订单方案 DO
 *
 * @author hesx
 */
@TableName("air_demand_scheme")
@KeySequence("air_demand_scheme_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AirDemandSchemeDO extends BaseDO {

    /**
     * id
     */
    @TableId
    private Long id;
    /**
     * 需求订单id
     */
    private Long demandId;
    /**
     * 序号
     */
    private Integer serialNo;
    /**
     * 预订员id 见表（system_users.id）
     */
    private Long bookUserId;
    /**
     * 预订部门id 见表（system_dept.id）
     */
    private Long bookDeptId;
    /**
     * 预订时间
     */
    private LocalDateTime bookTime;
    /**
     * 最后报价操作员id 见表（system_users.id）
     */
    private Long finallyQuoteUserId;
    /**
     * 最后报价部门id 见表（system_dept.id）
     */
    private Long finallyQuoteDeptId;
    /**
     * 最后报价时间
     */
    private LocalDateTime finallyQuoteTime;
    /**
     * 最后核价操作员id 见表（system_users.id）
     */
    private Long finallyPricingUserId;
    /**
     * 最后核价部门id 见表（system_dept.id）
     */
    private Long finallyPricingDeptId;
    /**
     * 最后核价时间
     */
    private LocalDateTime finallyPricingTime;
    /**
     * 取消规则id 见表（train_cancel_rule.id）
     */
    private Long cancelRuleId;
    /**
     * 取消操作员id 见表（system_users.id）
     */
    private Long cancelUserId;
    /**
     * 取消部门id 见表（system_dept.id）
     */
    private Long cancelDeptId;
    /**
     * 取消时间
     */
    private LocalDateTime cancelTime;
    /**
     * 取消原因
     */
    private String cancelCause;
    /**
     * 备注
     */
    private String remark;
    /**
     * 订单状态 字典（air_demand_scheme_status）
     *
     * 枚举 {@link TODO air_demand_scheme_status 对应的类}
     */
    private Integer status;

}
